﻿// --------------------------------------------------------------------------------------------------------------------
// <copyright file="ISessionLog.cs" company="Özgür Aytekin / Sandro Schnapp">
//   Özgür Aytekin / Sandro Schnapp
// </copyright>
// <summary>
//   Defines the ISessionLog type.
// </summary>
// --------------------------------------------------------------------------------------------------------------------

using System;

namespace SqlSystemWatcher.Entities
{
    /// <summary>
    ///     The SessionLog interface.
    /// </summary>
    public interface ISessionLog
    {
        /// <summary>
        ///     Gets or sets the id.
        /// </summary>
        int Id { get; set; }

        /// <summary>
        ///     Gets or sets the session log set id.
        /// </summary>
        Guid? SessionLogSetId { get; set; }

        /// <summary>
        ///     Gets or sets the session id.
        /// </summary>
        int? SessionId { get; set; }

        /// <summary>
        ///     Gets or sets the login name.
        /// </summary>
        string LoginName { get; set; }

        /// <summary>
        ///     Gets or sets the host name.
        /// </summary>
        string HostName { get; set; }

        /// <summary>
        ///     Gets or sets the wait time.
        /// </summary>
        int WaitTime { get; set; }

        /// <summary>
        ///     Gets or sets the computer processor unit time.
        /// </summary>
        int CpuTime { get; set; }

        /// <summary>
        ///     Gets or sets the reads.
        /// </summary>
        int Reads { get; set; }

        /// <summary>
        ///     Gets or sets the writes.
        /// </summary>
        int Writes { get; set; }

        /// <summary>
        ///     Gets or sets the server name.
        /// </summary>
        string ServerName { get; set; }

        /// <summary>
        ///     Gets or sets the created date.
        /// </summary>
        DateTime CreatedDate { get; set; }
    }
}